CXXFLAGS=`pkg-config gtkmm-2.4 --cflags` -g
LDFLAGS=`pkg-config gtkmm-2.4 --libs`
########################
#        Sources       #
########################
GLOBAL=global.h
INSTRUCCION=instruccion.h instruccion.cpp
MEMORIA=memoria.h memoria.cpp
MICROPROCESADOR=microprocesador.cpp microprocesador.h 
ARITMETICA_BINARIA=aritmetica_binaria.cpp aritmetica_binaria.h
DECODIFICADOR=decodificador.h decodificador.cpp 
TRADUCTOR=traductor.h traductor.cpp
GUI=gui.cpp gui.h
LISTADO_CODIGO=listado_codigo.h listado_codigo.cpp
SOURCE=$(GLOBAL) $(INSTRUCCION) $(MEMORIA) $(MICROPROCESADOR) $(DECODIFICADOR) $(TRADUCTOR) $(ARITMETICA_BINARIA) $(LISTADO_CODIGO)
########################
TESTS=test_decodificador test_traductor test_microprocesador test_listado_codigo
TARGET=gui $(TESTS)

all: $(TARGET)

test: $(TESTS)

gui: $(GUI)

test_decodificador: test_decodificador.cpp $(SOURCE)

test_traductor: test_traductor.cpp $(SOURCE)

test_microprocesador: test_microprocesador.cpp $(SOURCE)

test_listado_codigo: test_listado_codigo.cpp $(SOURCE)

.PHONY: clean

clean:
	rm -rf $(TARGET)